# 多返回值
def test_return():
    return 1,"hello",True
x,y,z = test_return()
print(x) # 1
print(y) # hello
print(z) # True

# 关键字参数
# def test1(name,age,sex):
#     print(f"我的名字叫{name}，我是{sex}性，我今年{age}岁了！")
# # 关键字传参
# test1(name="张三",age=13,sex="男")
# # 不固定顺序的关键字传参
# test1(age=13,name="张三",sex="男")
# # 和位置参数混合使用(位置参数必须在前面，且有顺序要求)
# test1("小明",sex="男",age=18)


def test2(name,age,sex="男"):
    print(f"我的名字叫{name}，我是{sex}性，我今年{age}岁了！")
test2("里活活",20)
test2("里活活",20,sex="女")

def test3(*args):
    # 这里的args是元组类型
    print(args)
test3("发发我发",12,"女")

def test4(**kwargs):
    print(kwargs)
test4(name='名字',age='17',sex='男')

def test_func(func):
    res = func(1,2,3)
    return res

def func(*args):
    res = 0
    for x in args:
        res+=x
    print(f"最后结果：{res}") # 6

test_func(func)
